/**
 * Created by Administrator on 201722/5/20.
 */

$(function () {
    //全局的checkbox选中和未选中的样式
    var $allCheckbox = $('input[type="checkbox"]'),     //全局的全部checkbox
        $wholeChexbox = $('.whole_check'),
        $cartBox = $('.cartBox'),                       //每个商铺盒子
        //$shopCheckbox = $('.shopChoice'),               //每个商铺的checkbox
        $sonCheckBox = $('.son_check');                 //每个商铺下的商品的checkbox
	    $allCheckbox.click(function () {//对于全部复选框来说
        if ($(this).is(':checked')) {
            $(this).next('label').addClass('mark');//如果当前checkbox选中，那么显示被选中
			$(this).parent().parent().parent().parent().parent().parent(".cartBox").addClass('bg-warning');//修改背景
        } else {
            $(this).next('label').removeClass('mark');
			$(this).parent().parent().parent().parent().parent().parent(".cartBox").removeClass('bg-warning');//修改背景
        }
    });

    //===============================================全局全选与单个商品的关系================================
    $wholeChexbox.click(function () {
        var $checkboxs = $cartBox.find('input[type="checkbox"]');
        if ($(this).is(':checked')) {
            $checkboxs.prop("checked", true);
            $checkboxs.next('label').addClass('mark');
			$cartBox.each(function(){
				$(this).addClass('bg-warning');
			});
			//$checkboxs.next('label').parent().parent().parent().parent().parent().addClass('bg-warning');
			//$(this).parent().parent().parent().parent().parent().parent(".cartBox").addClass('bg-warning');//
        } else {
            $checkboxs.prop("checked", false);
            $checkboxs.next('label').removeClass('mark');
			$cartBox.each(function(){
				$(this).removeClass('bg-warning');
			});
			//$checkboxs.next('label').parent().parent().parent().parent().parent().removeClass('bg-warning');
			//$(this).parent().parent().parent().parent().parent().parent(".cartBox").removeClass('bg-warning');
        }
        totalMoney();
    });


    $sonCheckBox.each(function () {
        $(this).click(function () {
            if ($(this).is(':checked')) {
                //判断：所有单个商品是否勾选
                var len = $sonCheckBox.length;
                var num = 0;
                $sonCheckBox.each(function () {
                    if ($(this).is(':checked')) {
                        num++;
                    }
                });
                if (num == len) {
                    $wholeChexbox.prop("checked", true);
                    $wholeChexbox.next('label').addClass('mark');
                }
            } else {
                //单个商品取消勾选，全局全选取消勾选
                $wholeChexbox.prop("checked", false);
                $wholeChexbox.next('label').removeClass('mark');
            }
        })
    })

   

    //========================================每个店铺checkbox与其下商品的checkbox的关系======================================================

    //店铺$sonChecks有一个未选中，店铺全选按钮取消选中，若全都选中，则全选打对勾
    $cartBox.each(function () {
        var $this = $(this);
        var $sonChecks = $this.find('.son_check');
        $sonChecks.each(function () {
            $(this).click(function () {
                if ($(this).is(':checked')) {
                    //判断：如果所有的$sonChecks都选中则店铺全选打对勾！
                    var len = $sonChecks.length;
                    var num = 0;
                    $sonChecks.each(function () {
                        if ($(this).is(':checked')) {
                            num++;
                        }
                    });
                    if (num == len) {
                        $(this).parents('.cartBox').find('.shopChoice').prop("checked", true);
                        $(this).parents('.cartBox').find('.shopChoice').next('label').addClass('mark');
                    }

                } else {
                    //否则，店铺全选取消
                    $(this).parents('.cartBox').find('.shopChoice').prop("checked", false);
                    $(this).parents('.cartBox').find('.shopChoice').next('label').removeClass('mark');
                }
                totalMoney();
            });
        });
    });


    //=================================================商品数量==============================================
    var $plus = $('.plus'),
        $reduce = $('.reduce'),
        $all_sum = $('.sum');
    $plus.click(function () {
        var $inputVal = $(this).prev('input'),
            $count = parseInt($inputVal.val())+1,
            $obj = $(this).parents('.amount_box').find('.reduce'),
            $priceTotalObj = $(this).parents('.order_lists').find('.sum_price'),
            $price = $(this).parents('.order_lists').find('.price').html(),  //单价
            $priceTotal = $count*parseInt($price.substring(1));
        $inputVal.val($count);
        $priceTotalObj.html('￥'+$priceTotal);
        if($inputVal.val()>1 && $obj.hasClass('reSty')){
            $obj.removeClass('reSty');
        }
        totalMoney();
    });

    $reduce.click(function () {
        var $inputVal = $(this).next('input'),
            $count = parseInt($inputVal.val())-1,
            $priceTotalObj = $(this).parents('.order_lists').find('.sum_price'),
            $price = $(this).parents('.order_lists').find('.price').html(),  //单价
            $priceTotal = $count*parseInt($price.substring(1));
        if($inputVal.val()>1){
            $inputVal.val($count);
            $priceTotalObj.html('￥'+$priceTotal);
        }
        if($inputVal.val()==1 && !$(this).hasClass('reSty')){
            $(this).addClass('reSty');
        }
        totalMoney();
    });

    $all_sum.keyup(function () {
        var $count = 0,
            $priceTotalObj = $(this).parents('.order_lists').find('.sum_price'),
            $price = $(this).parents('.order_lists').find('.price').html(),  //单价
            $priceTotal = 0;
        if($(this).val()==''){
            $(this).val('1');
        }
        $(this).val($(this).val().replace(/\D|^0/g,''));
        $count = $(this).val();
        $priceTotal = $count*parseInt($price.substring(1));
        $(this).attr('value',$count);
        $priceTotalObj.html('￥'+$priceTotal);
        totalMoney();
    })

    //======================================总计==========================================

    function totalMoney() {
        var total_money = 0;
        var total_count = 0;
        var calBtn = $('.calBtn a');
        $sonCheckBox.each(function () {
            if ($(this).is(':checked')) {
                var goods = parseInt($(this).parents('.order_lists').find('.sum_price').html().substring(1));
                var num =  parseInt($(this).parents('.order_lists').find('.sum').val());
                total_money += goods;
                total_count += num;
            }
        });
        $('.total_text').html('￥'+total_money);
        $('.piece_num').html(total_count);

        // console.log(total_money,total_count);

        if(total_money!=0 && total_count!=0){
            if(!calBtn.hasClass('btn_sty')){
                calBtn.addClass('btn_sty');
            }
        }else{
            if(calBtn.hasClass('btn_sty')){
                calBtn.removeClass('btn_sty');
            }
        }
    }
    //======================================实时计算金额==========================================
				console.info('运行moneycount');
				$sonCheckBox.each(function () {
                var goods = parseInt($(this).parents('.order_lists').find('.sum_price').html().substring(1));//获取金额
                var num =  parseInt($(this).parents('.order_lists').find('.sum').val());//获取数量
				var price =  parseInt($(this).parents('.order_lists').find('.price').html().substring(1));//获取单价
				$(this).parents('.order_lists').find('.sum_price').html('￥'+num*price);
            }		
	)
});

//============================================结算页面跳转==========================================
function settlement(){
	var cartdata='[';
	$(".son_check").each(function(){
		if(this.checked==true){
			var cart_id=$(this).parent().parent().parent().find(".cart_id").val();//获取购物车ID
			var good_num=$(this).parent().parent().parent().find(".sum").val();
			var shop_id=$(this).parent().parent().parent().find(".shop_id").val();
			cartdata+='{'+'"cart_id":'+'"'+cart_id+'",'+'"good_num":'+'"'+good_num+'",'+'"shop_id":'+'"'+shop_id+'"'+'},';
		}
	})	//each结束
	cartdata=cartdata.substring(0,cartdata.length-1);
	cartdata+=']';
	console.log(cartdata);
	$.ajax({
        url:"/ProfessionalDesign/cart/settlement",
        method:"post",
        //传过去的数据
        data:{cartdata},
        success:function (data) {
		document.write(data);//该方法现已不再支持
        }
      })
	}
